The present invention relates to clock recovery circuits and related circuits used for receiving and transmitting digital signals.
Modern digital systems typically include multiple digital devices capable of communicating with each other using digital signals made of sequences of digital symbols. A digital symbol takes up a time interval, which is often referred to as a unit interval or a data interval. A digital device may transmit a digital data signal by setting the value of a signal parameter associated with a communication channel to one of a plurality of predetermined values for each data interval according to a transmitter clock. A digital device that receives the digital signal takes successive samples of the signal according to a recovered clock and determines the values of the signal parameter represented by the samples. The recovered clock is preferably synchronized with the digital signal so that the samples are taken at times corresponding to the data intervals.
To communicate data at high speed, it is desirable to make the data intervals as short as possible, which, in turn, requires greater precision in the synchronization between the recovered clock used by the receiving device and the data intervals of the incoming signal. For example, modern interfacing and communication protocols such as PCI Express, SONET, InfiniBand and XAUI use data intervals on the order of nanoseconds or less, and require that the receiving device use a clock which is synchronized to the data intervals to within a fraction of one data interval.
In a typical link between two digital devices a receiving device employs two clock domains to sample a received digital signal. The two clock domains employed are the edge clock domain and the data clock domain. The edge clock domain is used to sample the digital signal at or near the boundaries of the data intervals. The data clock domain is used to sample the digital signal at a point between the boundaries of the data intervals so as to minimize the effect that signal transitions may have on the data domain samples.
The edge and data domain samples of the digital signal are used to synchronize the recovered clock to the transmitter clock. More specifically, the edge and data domain samples are supplied to a phase detector within the receiver which, in turn, uses the edge and data domain samples to generate a phase error signal indicative of the relative phase error between the transmitter clock and the recovered clock. The phase error signal is passed to a phase controller within the receiver, and the phase controller adjusts the phase of the edge and data clocks in accordance with the phase error signal. Thus, the phase detector and phase controller are part of a feedback loop that serves to minimize the phase error signal.